# 9-6 冰淇淋小店 ：冰淇淋小店是一种特殊的餐馆。编写一个名为IceCreamStand 的类，让它继承你为完成练习9-1或练习9-4而编写的Restaurant 类。这两个版
# 本的Restaurant 类都可以，挑选你更喜欢的那个即可。添加一个名为flavors 的属性，用于存储一个由各种口味的冰淇淋组成的列表。编写一个显示这些冰淇淋
# 的方法。创建一个IceCreamStand 实例，并调用这个方法。
class Restaurant():
    def __init__(self,restaurant_name,cuisine_type):
        self.restaurant_name=restaurant_name
        self.cuisine_type=cuisine_type
        self.number_served=0
    def describe_restaurant(self):
        print(self.restaurant_name)
        print(self.cuisine_type)
    def open_restaurant(self):
        print("餐馆正在营业")
    def set_number_served(self):
        self.number_served=int(input("输入餐馆就餐人数："))
        print("有"+str(restaurant.number_served)+"人在餐馆就餐")
    def increment_number_served(self):
        restaurant.number_served=int(input("你认为这家餐馆每天可能接待的就餐人数:"))
        restaurant.number_served +=1
        print("有"+str(restaurant.number_served)+"人在餐馆就餐")
class ice_cream(Restaurant):
    def __init__(self,restaurant_name,cuisine_type,flavors):
        super().__init__(restaurant_name,cuisine_type)
        self.flavors=flavors
    def show(self):
        super().describe_restaurant()
        print(self.flavors)


canguan = ice_cream("开心餐馆","冰激淋",["草莓","蓝莓","菠萝"])
canguan.show()


# 9-7 管理员 ：管理员是一种特殊的用户。编写一个名为Admin 的类，让它继承你为完成练习9-3或练习9-5而编写的User 类。添加一个名为privileges 的属性，用
# 于存储一个由字符串（如"can add post" 、"can delete post" 、"can ban user" 等）组成的列表。编写一个名为show_privileges() 的方法，它
# 显示管理员的权限。创建一个Admin 实例，并调用这个方法。
class User():
    def __init__(self,first_name,last_name,age,sex,login_attempts):
        self.first_name=first_name
        self.last_name=last_name
        self.age=age
        self.sex=sex
        self.login_attempts=login_attempts
    def describe_user(self):
        print(self.first_name)
        print(self.last_name)
        print(self.age)
        print(self.sex)
        print(self.login_attempts)
    def greet_user(self):
        print("你好！"+self.first_name+self.last_name+"欢迎登录。")
    def increment_login_attempts(self):
        self.login_attempts += 1
    def reset_login_attempts(self):
        self.login_attempts=0
class Admin(User):
    def __init__(self,first_name,last_name,age,sex,login_attempts,privileges):
        super().__init__(first_name,last_name,age,sex,login_attempts)
        self.privileges=privileges
    def show_privileges(self):
        super().describe_user()
        print(self.privileges)
people = Admin("李","华",20,"男",10,["can add post" ,"can delete post" ,"can ban user"])
people.show_privileges()
